Public Class UserSession
    Private mUserId As Guid
    Private mUserName As String
    Private mTenantId As Guid
    Private mTenantName As String
    Private mApplicationBaseUrl As String
    Private mLoginRedirect As String
    Private mLoginDate As DateTime
    Private mLoginTries As Integer
    Private mRoles As IList(Of String)

    Public Property UserId() As Guid
        Get
            Return mUserId
        End Get
        Set(ByVal value As Guid)
            mUserId = value
        End Set
    End Property

    Public Property UserName() As String
        Get
            Return mUserName
        End Get
        Set(ByVal value As String)
            mUserName = value
        End Set
    End Property

    Public Property TenantId() As Guid
        Get
            Return mTenantId
        End Get
        Set(ByVal value As Guid)
            mTenantId = value
        End Set
    End Property

    Public Property TenantName() As String
        Get
            Return mTenantName
        End Get
        Set(ByVal value As String)
            mTenantName = value
        End Set
    End Property

    Public Property BaseUrl() As String
        Get
            Return mApplicationBaseUrl
        End Get
        Set(ByVal value As String)
            mApplicationBaseUrl = value
        End Set
    End Property

    Public Property LoginRedirectUrl() As String
        Get
            Return mLoginRedirect
        End Get
        Set(ByVal value As String)
            mLoginRedirect = value
        End Set
    End Property

    Public Property LoginDate() As DateTime
        Get
            Return mLoginDate
        End Get
        Set(ByVal value As DateTime)
            mLoginDate = value
        End Set
    End Property

    Public Property LoginTries() As Integer
        Get
            Return mLoginTries
        End Get
        Set(ByVal value As Integer)
            mLoginTries = value
        End Set
    End Property

    Public Property Roles() As IList(Of String)
        Get
            Return mRoles
        End Get
        Set(ByVal value As IList(Of String))
            mRoles = value
        End Set
    End Property
End Class
